package com.piggy.logi.sys.bo;

import com.piggy.common.core.web.domain.BaseTenantEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;

/**
 * 基础业务编辑对象
 *
 * @author fengxy
 * @date 2023/11/09 14:54
 **/
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = true)
@ApiModel("基础业务编辑对象")
public class LogiSysBaseConfigEditBo extends BaseTenantEntity {

    /** 发车车次编号前缀状态：0.禁用 1.启用 */
    @NotNull(message = "发车车次编号前缀状态不能为空")
    @ApiModelProperty("发车车次编号前缀状态：0.禁用 1.启用")
    private Integer departPrefixStatus;

    /** 发车车次编号前缀 */
    @ApiModelProperty("发车车次编号前缀")
    private String departPrefix;

    /** 短驳车次编号前缀状态：0.禁用 1.启用 */
    @NotNull(message = "短驳车次编号前缀状态不能为空")
    @ApiModelProperty("短驳车次编号前缀状态：0.禁用 1.启用")
    private Integer drayagePrefixStatus;

    /** 短驳车次编号前缀 */
    @ApiModelProperty("短驳车次编号前缀")
    private String drayagePrefix;

    /** 商品订单号前缀 */
    @ApiModelProperty("商品订单号前缀")
    private String orderPrefix;

    /** 每月对账运单必须完成结算：0.否 1.是 */
    @NotNull(message = "每月对账运单必须完成结算不能为空")
    @ApiModelProperty("每月对账运单必须完成结算：0.否 1.是")
    private Integer settledCheckBill;

    /** 必须完成对账之后才可开票：0.否 1.是 */
    @NotNull(message = "必须完成对账之后才可开票不能为空")
    @ApiModelProperty("必须完成对账之后才可开票：0.否 1.是")
    private Integer checkBillInvoice;

    /** 代收货款结清实收余额必须0：0.否 1.是 */
    @NotNull(message = "代收货款结清实收余额必须0不能为空")
    @ApiModelProperty("代收货款结清实收余额必须0：0.否 1.是")
    private Integer agentPaySettled;

    /** 运单应收结清实收余额必须0：0.否 1.是 */
    @NotNull(message = "运单应收结清实收余额必须0不能为空")
    @ApiModelProperty("运单应收结清实收余额必须0：0.否 1.是")
    private Integer receivableSettled;

    /** 运单应付结清应付余额必须0：0.否 1.是 */
    @NotNull(message = "运单应收结清实收余额必须0不能为空")
    @ApiModelProperty("运单应付结清应付余额必须0：0.否 1.是")
    private Integer payableSettled;
}
